package com.yl.danmo.domain;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.yl.common.core.annotation.Excel;
import com.yl.common.core.web.domain.BaseEntity;

/**
 * 会员职位关联对象 danmo_person_position
 * 
 * @author yl
 * @date 2025-04-12
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class DanmoPersonPosition extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键id */
    private Long id;

    /** 会员信息id */
    @Excel(name = "会员信息id")
    private Long personId;

    /** 职位id
 */
    @Excel(name = "职位id ")

    private Long positionId;

    /** 协会选择 */
    @Excel(name = "协会选择")
    private Long associationId;

    /** 艺术家类型 */
    @Excel(name = "艺术家类型")
    private Long associationTypeId;

    /** 证书 */
    @Excel(name = "证书")
    private String certificateImageId;

    /** 证书编号 */
    @Excel(name = "证书编号")
    private String certificateNumber;

    /** 第几届 */
    @Excel(name = "第几届")
    private Long several;

    /** 年份 */
    @Excel(name = "年份")
    private String year;

    /** 职位（1 会员 2 理事 ） */
    @Excel(name = "职位", readConverterExp = "1=,会=员,2=,理=事")
    private Long positions;

    /** 小团体 */
    @Excel(name = "小团体")
    private Long massId;

    /** 删除状态 1删除 0未删除 */
    @Excel(name = "删除状态 1删除 0未删除")
    private Integer deleteFlag;

    /** 入会省 */
    @Excel(name = "入会省")
    private String addressEntry;

    /** 入会市 */
    @Excel(name = "入会市")
    private String addressCity;

    /** 入会县 */
    @Excel(name = "入会县")
    private String addressCounty;


    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("personId", getPersonId())
            .append("positionId", getPositionId())
            .append("associationId", getAssociationId())
            .append("associationTypeId", getAssociationTypeId())
            .append("certificateImageId", getCertificateImageId())
            .append("certificateNumber", getCertificateNumber())
            .append("several", getSeveral())
            .append("year", getYear())
            .append("positions", getPositions())
            .append("massId", getMassId())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("deleteFlag", getDeleteFlag())
            .append("addressEntry", getAddressEntry())
            .append("addressCity", getAddressCity())
            .append("addressCounty", getAddressCounty())
            .toString();
    }
}
